home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part2 / 10401 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  2.7 KB

  1. Path: keats.ugrad.cs.ubc.ca!not-for-mail
  2. From: c2a192@ugrad.cs.ubc.ca (Kazimir Kylheku)
  3. Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++
  4. Subject: Re: C/C++ knocks the crap out of Ada
  5. Date: 7 Mar 1996 14:44:19 -0800
  6. Organization: Computer Science, University of B.C., Vancouver, B.C., Canada
  7. Message-ID: <4hnos3INNqkq@keats.ugrad.cs.ubc.ca>
  8. References: <00001a73+00002504@msn.com> <4h5hgj$vpd@tomquartz.niestu.com> <4h7jskINNnph@anvil.ugrad.cs.ubc.ca> <313EDF38.61C1@lfwc.lockheed.com>
  9. NNTP-Posting-Host: keats.ugrad.cs.ubc.ca
  10.  
  11. In article <313EDF38.61C1@lfwc.lockheed.com>,
  12. Ken Garlington  <GarlingtonKE@lfwc.lockheed.com> wrote:
  13. >Kazimir Kylheku wrote:
  14. >> 
  15. >> This is false. There are compilers which offer range checking. In a situation
  16. >> where safety-critical software is designed, such a compiler should be used.
  17. >
  18. >I thought you were arguing the merits of two languages. Does the C _language_
  19. >standard define the syntax and sematics of built-in range checking? Or does
  20.  
  21. There is no concept of range checking at the syntactic level. Unfortunately,
  22. the C standard does not mandate a mechanism for enforcing checks for undefined
  23. behavior such as generating or dereferencing pointer variables that point
  24. outside of a valid object. The semantics of what constitues a violation are
  25. pretty clear, but the _enforcement_ is not standardized. I make no pretence
  26. about how far the standard goes.
  27.  
  28. I am somewhat cushioned from feeling the full disadvantage of this; but if I
  29. were to work on a PC platform with some Borland C compiler, I would probably be
  30. ripping my hair out. On the platforms that I use for most of my programming, I
  31. have a whole arsenal of all kinds of freeware tools that are generally
  32. portable. For example, if a program of mine were suffering from a corrupt heap,
  33. I could use ElectricFence on nearly any UNIX platform to find the problem. If I
  34. were working with Think C on a Mac, I could not use ElectricFence, because the
  35. system has no mprotect() nor mmap() system calls.
  36.  
  37. >"language" in your lexicon include a particular C compiler, with all the add-on
  38. >tools that one could buy to get it to behave closer to a _standard_ Ada 
  39. >implementation? This is the classic non-argument with regard to languages - that
  40.  
  41. No. In my lexicon, the morphological compound "programming language", is
  42. clearly distinct from "implementation" or "compiler".
  43.  
  44. >a language can be "fixed up" with enough non-standard tools to do what another
  45. >language has standardized. It's probably true, but it's not a fair _language_
  46. >comparison.
  47.  
  48. Ada does incorporate the features of a lot of these tools into its standard.
  49. But are you saying that there are no add-on, platform-dependent products for
  50. Ada that extend the capabilities further where needed?
  51. -- 
  52.  
  53.